// ******************************************************************
// * Copyright(c)  Steven Lu
// * Description   : Schema_PUR_APPLICATION
// * CreateDate    : 2012/4/23 20:31:47
// * Creater       : CodeSmith
// * LastChangeDate: 2012/4/23 20:31:47
// * LastChanger   : 2012/4/23 20:31:47
// * Version Info  : 1.0 For ESOL
// ******************************************************************

using System;
using System.Collections.Generic;
using System.Text;
using Suzsoft.Smart.EntityCore;

namespace ESOL.Common.Schema
{
    [Serializable]
    public partial class PurApplicationTable : TableInfo
    {
        public const string C_TableName = "PUR_APPLICATION";

        public const string C_APPLICATION_ID = "APPLICATION_ID";
        public const string C_PLAN_ORDER_ID = "PLAN_ORDER_ID";
        public const string C_APPLICATION_CODE = "APPLICATION_CODE";
        public const string C_IS_PRODUCT_PURCHASE = "IS_PRODUCT_PURCHASE";
        public const string C_PURCHASE_TYPE = "PURCHASE_TYPE";
        public const string C_APPLICATION_PERSON = "APPLICATION_PERSON";
        public const string C_APPLICATION_DATE = "APPLICATION_DATE";
        public const string C_DELIVERY_REQUIRED_DATE = "DELIVERY_REQUIRED_DATE";
        public const string C_DELIVERY_PLAN_DATE = "DELIVERY_PLAN_DATE";
        public const string C_STATUS = "STATUS";
        public const string C_REMARK = "REMARK";
        public const string C_CREATED_DATE = "CREATED_DATE";
        public const string C_CREATED_BY = "CREATED_BY";
        public const string C_LAST_MODIFIED_DATE = "LAST_MODIFIED_DATE";
        public const string C_LAST_MODIFIED_BY = "LAST_MODIFIED_BY";
        public const string C_APPROVED_DATE = "APPROVED_DATE";
        public const string C_APPROVED_BY = "APPROVED_BY";

        public PurApplicationTable()
        {
            _tableName = "PUR_APPLICATION";
        }

        protected static PurApplicationTable _current;
        public static PurApplicationTable Current
        {
            get
            {
                if (_current == null)
                {
                    Initial();
                }
                return _current;
            }
        }

        private static void Initial()
        {
            _current = new PurApplicationTable();

            _current.Add(C_APPLICATION_ID, new ColumnInfo(C_APPLICATION_ID, "ApplicationId", true, typeof(string)));
            _current.Add(C_PLAN_ORDER_ID, new ColumnInfo(C_PLAN_ORDER_ID, "PlanOrderId", false, typeof(string)));
            _current.Add(C_APPLICATION_CODE, new ColumnInfo(C_APPLICATION_CODE, "ApplicationCode", false, typeof(string)));
            _current.Add(C_IS_PRODUCT_PURCHASE, new ColumnInfo(C_IS_PRODUCT_PURCHASE, "IsProductPurchase", false, typeof(int)));
            _current.Add(C_PURCHASE_TYPE, new ColumnInfo(C_PURCHASE_TYPE, "PurchaseType", false, typeof(string)));
            _current.Add(C_APPLICATION_PERSON, new ColumnInfo(C_APPLICATION_PERSON, "ApplicationPerson", false, typeof(string)));
            _current.Add(C_APPLICATION_DATE, new ColumnInfo(C_APPLICATION_DATE, "ApplicationDate", false, typeof(DateTime)));
            _current.Add(C_DELIVERY_REQUIRED_DATE, new ColumnInfo(C_DELIVERY_REQUIRED_DATE, "DeliveryRequiredDate", false, typeof(DateTime)));
            _current.Add(C_DELIVERY_PLAN_DATE, new ColumnInfo(C_DELIVERY_PLAN_DATE, "DeliveryPlanDate", false, typeof(DateTime)));
            _current.Add(C_STATUS, new ColumnInfo(C_STATUS, "Status", false, typeof(string)));
            _current.Add(C_REMARK, new ColumnInfo(C_REMARK, "Remark", false, typeof(string)));
            _current.Add(C_CREATED_DATE, new ColumnInfo(C_CREATED_DATE, "CreatedDate", false, typeof(DateTime)));
            _current.Add(C_CREATED_BY, new ColumnInfo(C_CREATED_BY, "CreatedBy", false, typeof(string)));
            _current.Add(C_LAST_MODIFIED_DATE, new ColumnInfo(C_LAST_MODIFIED_DATE, "LastModifiedDate", false, typeof(DateTime)));
            _current.Add(C_LAST_MODIFIED_BY, new ColumnInfo(C_LAST_MODIFIED_BY, "LastModifiedBy", false, typeof(string)));
            _current.Add(C_APPROVED_DATE, new ColumnInfo(C_APPROVED_DATE, "ApprovedDate", false, typeof(DateTime)));
            _current.Add(C_APPROVED_BY, new ColumnInfo(C_APPROVED_BY, "ApprovedBy", false, typeof(string)));

        }

        public ColumnInfo APPLICATION_ID
        {
            get { return this[C_APPLICATION_ID]; }
        }

        public ColumnInfo PLAN_ORDER_ID
        {
            get { return this[C_PLAN_ORDER_ID]; }
        }

        public ColumnInfo APPLICATION_CODE
        {
            get { return this[C_APPLICATION_CODE]; }
        }

        public ColumnInfo IS_PRODUCT_PURCHASE
        {
            get { return this[C_IS_PRODUCT_PURCHASE]; }
        }

        public ColumnInfo PURCHASE_TYPE
        {
            get { return this[C_PURCHASE_TYPE]; }
        }

        public ColumnInfo APPLICATION_PERSON
        {
            get { return this[C_APPLICATION_PERSON]; }
        }

        public ColumnInfo APPLICATION_DATE
        {
            get { return this[C_APPLICATION_DATE]; }
        }

        public ColumnInfo DELIVERY_REQUIRED_DATE
        {
            get { return this[C_DELIVERY_REQUIRED_DATE]; }
        }

        public ColumnInfo DELIVERY_PLAN_DATE
        {
            get { return this[C_DELIVERY_PLAN_DATE]; }
        }

        public ColumnInfo STATUS
        {
            get { return this[C_STATUS]; }
        }

        public ColumnInfo REMARK
        {
            get { return this[C_REMARK]; }
        }

        public ColumnInfo CREATED_DATE
        {
            get { return this[C_CREATED_DATE]; }
        }

        public ColumnInfo CREATED_BY
        {
            get { return this[C_CREATED_BY]; }
        }

        public ColumnInfo LAST_MODIFIED_DATE
        {
            get { return this[C_LAST_MODIFIED_DATE]; }
        }

        public ColumnInfo LAST_MODIFIED_BY
        {
            get { return this[C_LAST_MODIFIED_BY]; }
        }

        public ColumnInfo APPROVED_DATE
        {
            get { return this[C_APPROVED_DATE]; }
        }

        public ColumnInfo APPROVED_BY
        {
            get { return this[C_APPROVED_BY]; }
        }



    }
}

